function parseParam(url){
    // . 任意字符 ？一次或多次
    const paramStr=/.+\?(.+)$/.exec(url)[1];
    const paramsArr=paramStr.split('&');
    let paramsObj={};
    paramsArr.forEach(param=>{
        if(/=/.test(param)){
            let [key,val]=param.split('=');
            val=decodeURIComponent(val);// 解码
            val=/^\d+$/.test(val)?parseFloat(val):val;// 是数字吗
            if(paramsObj.hasOwnProperty(key)){
                paramsObj[key]=[].concat(paramsObj[key],val);

            }else {
                paramsObj[key]=val 
            }
        }else{
            paramsObj[param]=true;
        }
    })
    return paramsObj
}

console.log(parseParam('https://www.baidu?width=251&b&height=360&pdi=85&pdi=120#name'));